package com.yunsc.media.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yunsc.common.utils.PageResult;
import com.yunsc.media.dto.FileDTO;
import com.yunsc.media.dto.QueryFileDTO;
import com.yunsc.media.entity.YunscUploadFileEntity;

import java.util.List;

/**
 * 文件库记录表
 *
 * @author adan
 * @email 2028038953@qq.com
 * @date 2024-04-05 01:37:46
 */
public interface YunscUploadFileService extends IService<YunscUploadFileEntity> {

    /**
     * 根据文件id查询文件信息
     *
     * @param fileId 文件id
     * @return 文件信息
     */
    YunscUploadFileEntity queryFileById(Integer fileId);

    /**
     * 根据文件id列表查询文件信息list
     *
     * @param imageIds 文件id列表
     * @return 文件信息列表
     */
    List<YunscUploadFileEntity> queryFilesByIds(List<Integer> imageIds);


    /**
     * 分页查询文件列表
     *
     * @param fileDTO 查询条件
     * @param storeId 当前商户id
     * @return 文件列表
     */
    PageResult<YunscUploadFileEntity> queryFileList(QueryFileDTO fileDTO, Integer storeId);

    /**
     * 新增文件
     *
     * @param fileDTO 文件信息
     * @return 文件id
     */
    void editFile(FileDTO fileDTO);

    /**
     * 删除文件
     *
     * @param fileIds 文件ids
     */
    void deleteFile(List<Integer> fileIds);

    /**
     * 根据文件id查询文件url
     *
     * @param imageId 文件id
     * @return 文件url
     */
    String queryFileUrlById(Integer imageId);


}

